package org.zjt.xiaofeng;


/**
 * final、finally、finalize
 *
 *    final：     引用的地址不会被改变，但不等于immutable（不可改变的）
 *    finally：   通常用于资源的回收，try-finally或者 try-resource-finally
 *    finalize：  通常用于对象gc之前的资源回收，不推荐使用。不知道什么时候执行。对象回收比较慢。可利用cleaner和try-finally来回收资源。
 *
 *
 * Cleaner：
 *
 *    虚引用 + 引用队列方式，当对象被gc时候，回收弱引用对象会被放入引用队列中，这样达到finalize的资源回收效果。
 *
 *    虚引用主要用来跟踪对象被垃圾回收器回收的活动。虚引用与软引用和弱引用的一个区别在于：虚引用必须和引用队列 （ReferenceQueue）联合使用。当垃圾回收器准备回收一个对象时，如果发现它还有虚引用，就会在回收对象的内存之前，把这个虚引用加入到与之 关联的引用队列中。
 *
 * finalize ：
 *
 *    只会将对象的资源释放延后，对象gc后，清理资源变成了链式。
 *
 *
 *
 */
public class Finally {

    public static void main(String[] args) {

    }



}
